package uml.construct.prototype.deepclone;

import java.io.IOException;

/**
 * 深克隆--深克隆接口<br>
 * on 2022/12/30 21:18
 */
public interface DeepClone<T> {
    /**
     * 深克隆方法：借助JavaI/O流,通过序列化和反序列化实现，实现此接口的类务必同时实现Serializable接口
     * @return 克隆完成的对象
     * @throws IOException 任何常规的的输入/输出异常发生时
     * @throws ClassNotFoundException 序列化的类未找到时
     */
    T deeplyClone() throws IOException, ClassNotFoundException;
}
